/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package es.upsam.modelo;

import es.upsam.modelo.dao.persistencia;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author carmas
 */
public class Foro {
    int id;
    int proyecto;
    String nombreForo;
    int usuarioAdmin;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getNombreForo() {
        return nombreForo;
    }

    public void setNombreForo(String nombreForo) {
        this.nombreForo = nombreForo;
    }

    public int getProyecto() {
        return proyecto;
    }

    public void setProyecto(int proyecto) {
        this.proyecto = proyecto;
    }

    public int getUsuario() {
        return usuarioAdmin;
    }

    public void setUsuario(int usuario) {
        this.usuarioAdmin = usuario;
    }

    public int persistir(){
        int i;

        persistencia p = new persistencia();

        String query ="INSERT INTO APP.FOROS (ID_FORO,ID_PROYECTO,NOMBRE_FORO,ID_USUARIO_ADMIN) ";
               query+=" values ((SELECT max(ID_FORO)+1 FROM APP.FOROS),";
               query+=this.proyecto +",'"+ this.nombreForo +"',"+ this.usuarioAdmin +")";

        i = p.ejecutarActualizacion(query);
        p.Cerrar();
        return i;
    }


    public void consultarPorId (int id){
            try {
            String query = "select ID_FORO,ID_PROYECTO,NOMBRE_FORO,ID_USUARIO_ADMIN from APP.FOROS where ID_FORO ="+id;
            persistencia p = new persistencia();
            ResultSet rs = p.ejecutarConsulta(query);
            while (rs.next()) {
                this.id = rs.getInt("ID_FORO");
                this.nombreForo = rs.getString("NOMBRE_FORO");
                this.proyecto = rs.getInt("ID_PROYECTO");
                this.usuarioAdmin = rs.getInt("ID_USUARIO_ADMIN");;
            }
            rs.close();
            p.Cerrar();
        } catch (SQLException ex) {
            Logger.getLogger(Usuario.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    public void consultarPorIdProyecto(int id_proyecto){
        try {
            String query = "select ID_FORO,ID_PROYECTO,NOMBRE_FORO,ID_USUARIO_ADMIN from APP.FOROS where ID_PROYECTO ="+id_proyecto;
            persistencia p = new persistencia();
            ResultSet rs = p.ejecutarConsulta(query);
            while (rs.next()) {
                this.id = rs.getInt("ID_FORO");
                this.nombreForo = rs.getString("NOMBRE_FORO");
                this.proyecto = rs.getInt("ID_PROYECTO");
                this.usuarioAdmin = rs.getInt("ID_USUARIO_ADMIN");;
            }
            rs.close();
            p.Cerrar();
        } catch (SQLException ex) {
            Logger.getLogger(Usuario.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    public void consultarPorIdAdmin(int id_admin){
        try {
            String query = "select ID_FORO,ID_PROYECTO,NOMBRE_FORO,ID_USUARIO_ADMIN from APP.FOROS where ID_USUARIO_ADMIN ="+id_admin;
            persistencia p = new persistencia();
            ResultSet rs = p.ejecutarConsulta(query);
            while (rs.next()) {
                this.id = rs.getInt("ID_FORO");
                this.nombreForo = rs.getString("NOMBRE_FORO");
                this.proyecto = rs.getInt("ID_PROYECTO");
                this.usuarioAdmin = rs.getInt("ID_USUARIO_ADMIN");;
            }
            rs.close();
            p.Cerrar();
        } catch (SQLException ex) {
            Logger.getLogger(Usuario.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

   public void consultarPorNombre(String nombre){
        try {
            String query = "select ID_FORO,ID_PROYECTO,NOMBRE_FORO,ID_USUARIO_ADMIN from APP.FOROS where NOMBRE_FORO like '%"+nombre+"%'";
            persistencia p = new persistencia();
            ResultSet rs = p.ejecutarConsulta(query);
            while (rs.next()) {
                this.id = rs.getInt("ID_FORO");
                this.nombreForo = rs.getString("NOMBRE_FORO");
                this.proyecto = rs.getInt("ID_PROYECTO");
                this.usuarioAdmin = rs.getInt("ID_USUARIO_ADMIN");;
            }
            rs.close();
            p.Cerrar();
        } catch (SQLException ex) {
            Logger.getLogger(Usuario.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

}